﻿// Admin.NET 项目的版权、商标、专利和其他相关权利均受相应法律法规的保护。使用本项目应遵守相关法律法规和许可证的要求。
//
// 本项目主要遵循 MIT 许可证和 Apache 许可证（版本 2.0）进行分发和使用。许可证位于源代码树根目录中的 LICENSE-MIT 和 LICENSE-APACHE 文件。
//
// 不得利用本项目从事危害国家安全、扰乱社会秩序、侵犯他人合法权益等法律法规禁止的活动！任何基于本项目二次开发而产生的一切法律纠纷和责任，我们不承担任何责任！

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WCS.Application.Entity.Warehous;

namespace WCS.Application.Service.Device;

/// <summary>
/// 设备分页查询DTO
/// </summary>
public class DevicePageInputDto : BasePageInput
{
    public string DeviceId { get; set; }
    public int? DeviceType { get; set; }
    public int? DeviceStatus { get; set; }
}



/// <summary>
/// 新增设备DTO
/// </summary>
public class DeviceCreateDto : DeviceMaintenanceEntity
{
    [Required]
    public int DeviceType { get; set; }
    [Required]
    [MaxLength(50)]
    public string DeviceId { get; set; }
    [MaxLength(200)]
    public string Description { get; set; }
    public int Storey { get; set; }
    public int DeviceStatus { get; set; }
    public int InOrOut { get; set; }
}

/// <summary>
/// 更新设备DTO
/// </summary>
public class DeviceUpdateDto : DeviceMaintenanceEntity
{
    [Required]
    public long Id { get; set; }
    [Required]
    public int DeviceType { get; set; }
    [Required]
    [MaxLength(50)]
    public string DeviceId { get; set; }
    [MaxLength(200)]
    public string Description { get; set; }
    public int Storey { get; set; }
    public int DeviceStatus { get; set; }
    public int InOrOut { get; set; }
}

/// <summary>
/// 删除设备DTO
/// </summary>
public class DeviceDeleteDto : BaseIdInput
{
    
}

/// <summary>
/// 批量删除设备DTO
/// </summary>
public class DeviceBatchDeleteDto
{
    [Required]
    public List<long> Ids { get; set; }
}

/// <summary>
/// 导出设备DTO
/// </summary>
public class DeviceExportInputDto
{
    public string DeviceId { get; set; }
    public int? DeviceType { get; set; }
    public int? DeviceStatus { get; set; }
}
public class ImportDeviceOutput : DeviceMaintenanceEntity
{
    /// <summary>
    /// 执行结果
    /// </summary>
    public int ResultCode { get; set; } = 200;

    /// <summary>
    /// 错误信息
    /// </summary>
    public string Message { get; set; } = "导入成功";
}
